from dataclasses import dataclass

from dc_shop.core.exceptions.common import ApplicationException, BaseTgException


@dataclass
class OrderIdNotExist(BaseTgException):
    msg_for_user: str = "order-not-exists-msg"


@dataclass
class OrderIdAlreadyExist(BaseTgException):
    msg_for_user: str = "order-already-exists-msg"


@dataclass
class ProductNotExists(BaseTgException):
    msg_for_user: str = "product-not-exists-msg"


class ProductOutOfStock(ApplicationException):
    ...
